
const interval = 60000;

// 工具函数：将带单位的字符串转换为数字
function parseNumberWithUnits(text) {
    if (!text) return NaN;
    
    // 去掉前缀的 "/" 和空格
    text = text.trim();
    if (text.startsWith('/')) {
        text = text.slice(1).trim(); // 删除第一个字符 '/'，再 trim 一下
    }
    // 去除逗号和多余空格
    text = text.replace(/,/g, '').trim().toUpperCase();
    console.warn('替换后的文本：', text);
    // 正则匹配数字和单位
    const match = text.match(/^([\d\.]+)\s*(K|M|B|T)?$/);
    if (!match) {
        console.warn('无法解析数值:', text);
        return NaN;
    }

    let number = parseFloat(match[1]);
    const unit = match[2];
    if (isNaN(number)) return NaN;
    // 根据单位换算
    switch (unit) {
        case 'K':
            number *= 1e3;
            break;
        case 'M':
            number *= 1e6;
            break;
        default:
            // 没单位，原样返回
            break;
    }
    return number;
}

const interval2 = 100000;
function zanmeitanyang(){    
    try{
        const button_zanmei = document.querySelector('.btnContent');   //  
        if (!button_zanmei) {
            console.log('未找到指定 data-reactid 的按钮');
            return;
        }
        button_zanmei.click();
        console.log('赞美太阳');
        
    } catch (error) {
        console.error('[zanmeitanyang]发生错误：', error);
    }
}
const clickInterval2 = setInterval(zanmeitanyang, interval);
//clearInterval(clickInterval2);


// 点击按钮的函数
function clickButtonByReactId() {
    try {
        // 精确查找 data-reactid 为指定值的元素
        const button_mulcai = document.querySelector('[data-reactid=".0.5.1.0.0.5.0"]');    //  +100
        const button_muliang = document.querySelector('[data-reactid=".0.5.1.0.3.4.0"]');   //  +25
        const button_shiban = document.querySelector('[data-reactid=".0.5.1.0.4.4.0"]');    //  +25
        const button_jinshuban = document.querySelector('[data-reactid=".0.5.1.0.5.4.0"]');   //  +25
        const button_yangpizhi = document.querySelector('[data-reactid=".0.5.1.0.f.6.0"]');   //  全部
        const button_pailieren = document.querySelector('[data-reactid=".0.2.0"]');   //  全部
        const button_gang = document.querySelector('[data-reactid=".0.5.1.0.6.6.0"]');   //  
       
        if (!button_mulcai || !button_muliang||!button_shiban||!button_pailieren||!button_gang) {
            console.log('未找到指定 data-reactid 的按钮');
            return;
        }
        
        // 最大值数据
        const maxV_mucai = document.querySelector('[data-reactid=".0.0.1.1.1.3"]');
        const maxV_bohe = document.querySelector('[data-reactid=".0.0.1.1.0.3"]');
        const maxV_kuangwu = document.querySelector('[data-reactid=".0.0.1.1.2.3"]');
        const maxV_tie = document.querySelector('[data-reactid=".0.0.1.1.4.3"]');
        const maxV_miaoli = document.querySelector('[data-reactid=".0.0.1.1.b.3"]');

        // 实时数据
        const dataV_mucai = document.querySelector('[data-reactid=".0.0.1.1.1.2"]');
        const dataV_bohe = document.querySelector('[data-reactid=".0.0.1.1.0.2"]');
        const dataV_kuangwu = document.querySelector('[data-reactid=".0.0.1.1.2.2"]');
        const dataV_tie = document.querySelector('[data-reactid=".0.0.1.1.4.2"]');
        const dataV_miaoli = document.querySelector('[data-reactid=".0.0.1.1.b.2"]');

        if (!maxV_mucai||!maxV_bohe||!dataV_mucai||!dataV_bohe||!maxV_kuangwu
            ||!dataV_kuangwu||!maxV_tie||!dataV_tie||!dataV_miaoli||!maxV_miaoli) {
            console.log('未找到最大值或实时数据元素');
        }
        
        const currentVmucai = parseNumberWithUnits(dataV_mucai.innerText);
        const maxVmucai = parseNumberWithUnits(maxV_mucai.innerText);

        const currentVbohe = parseNumberWithUnits(dataV_bohe.innerText);
        const maxVbohe = parseNumberWithUnits(maxV_bohe.innerText);

        const currentVkuangwu = parseNumberWithUnits(dataV_kuangwu.innerText);
        const maxVkuangwu = parseNumberWithUnits(maxV_kuangwu.innerText);

        const currentVtie = parseNumberWithUnits(dataV_tie.innerText);
        const maxVtie = parseNumberWithUnits(maxV_tie.innerText);

        const currentVmiaoli = parseNumberWithUnits(dataV_miaoli.innerText);
        const maxVmiaoli = parseNumberWithUnits(maxV_miaoli.innerText);

        if(isNaN(currentVmucai)||isNaN(maxVmucai)){
            console.log(`数值解析失败 -> 木材当前值: ${currentVmucai.innerText} | 最大值: ${maxVmucai.innerText}`);
        }
        if(isNaN(currentVbohe)||isNaN(maxVbohe)){
            console.log(`数值解析失败 -> 薄荷当前值: ${currentVbohe.innerText} | 最大值: ${maxVbohe.innerText}`);
        }
        if(isNaN(currentVkuangwu)||isNaN(maxVkuangwu)){
            console.log(`数值解析失败 -> 木材当前值: ${dataV_kuangwu.innerText} | 最大值: ${maxV_kuangwu.innerText}`);
        }
        if(isNaN(currentVtie)||isNaN(maxVtie)||isNaN(currentVmiaoli)||isNaN(maxVmiaoli)){
            console.log(`数值解析失败 -> `);
        }
        // 点击按钮
        if (currentVmucai >= maxVmucai*0.7) {
            button_muliang.click();
            console.log('木梁++');
        }
        if (currentVbohe >= maxVbohe*0.5) {
            button_mulcai.click();
            console.log('木材++');
        }
        if (currentVkuangwu >= maxVkuangwu*0.8) {
            button_shiban.click();
            console.log('石板++');
        }
        if (currentVtie >= maxVtie*0.8) {
            button_gang.click();
            button_jinshuban.click();
            console.log('钢++&金属板++');
        }
        if (currentVmiaoli >= maxVmiaoli*0.7) {
            button_pailieren.click();
            button_yangpizhi.click();
            console.log('派出猎人&羊皮纸+++');
        }

    } catch (error) {
        console.error('发生错误：', error);
    }
}

// 启动定时器，每隔 interval 毫秒点击一次
const clickInterval = setInterval(clickButtonByReactId, interval);

// 如果想停止点击，可以执行
// clearInterval(clickInterval);

/*
猫薄荷：
实时数据    .0.0.1.1.0.2
最大值      .0.0.1.1.0.3

矿物：
实时数据    .0.0.1.1.2.2
最大值      .0.0.1.1.2.3

铁：
实时数据    .0.0.1.1.4.2
最大值      .0.0.1.1.4.3

黄金：
实时数据    .0.0.1.1.6.2
最大值      .0.0.1.1.6.3

喵力：
实时数据    .0.0.1.1.b.2
最大值      .0.0.1.1.b.3

科学：
实时数据    .0.0.1.1.c.2
最大值      .0.0.1.1.c.3

文化：
实时数据    .0.0.1.1.d.2
最大值      .0.0.1.1.d.3

木材:
+2      .0.5.1.0.0.3.0
+25     .0.5.1.0.0.4.0
+100    .0.5.1.0.0.5.0
实时数据    .0.0.1.1.1.2
最大值      .0.0.1.1.1.3

木梁：
+2      .0.5.1.0.3.3.0
+25     .0.5.1.0.3.4.0
+100    .0.5.1.0.3.5.0

石板：
+2      .0.5.1.0.4.3.0
+25     .0.5.1.0.4.4.0
+100    .0.5.1.0.4.5.0

金属板：
+2      .0.5.1.0.5.3.0
+25     .0.5.1.0.5.4.0
+100    .0.5.1.0.5.5.0

羊皮纸：
+2      .0.5.1.0.f.3.0
+25     .0.5.1.0.f.4.0
+100    .0.5.1.0.f.5.0
全部    .0.5.1.0.f.6.0

派出猎人：
    .0.2.0



*/


